const express = require("express");
let app = express();
// 基于一个第三方中间件  express-session 
// 1.需要安装 express-session 2.引入express-session ，配置session
let session = require("express-session");

app.use(session({
    name:"mysession-id",// 设置sessionid 存储的cookie名称
    secret:'mysecret', // 加密对象的时候需要的密码
    resave:true, // 有连接过来的时候 session会重新创建
    saveUninitialized: true, //  客户端的存放sessionid的cookie是否需要重新保存
    cookie:{  // 设置客户端 cookie存放sessionid的配置
        maxAge:3600*1000,
        httpOnly:true
    }
}))


app.get("/setsession",(req,res)=>{
    // 设置session的值, 通过 req来设置 session ，session存放在服务器，所以只能通过req来设置。
        req.session.username = "zhangsan";
        res.send("设置session11");
    })
    
    app.get("/getsession",(req,res)=>{
        // 获取session的值
        console.log(req.session.username);
        res.send("hello"+req.session.username);
    })
    
    app.get("/delsession",(req,res)=>{
        // 删除session
        req.session.destroy();
        res.send("删除session");
    })

    app.listen(8889)

// session是存在服务器，也是服务器端操作，但是需要搭配cookie来存sessionid的来使用
//如果客户端禁用cookie，session也是没法用的


